package com.zhi.service;

import com.zhi.entity.Teacher;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import java.util.List;

/**
 * 教师service层
 */
public interface TeacherService {

    /**
     * 获得所有数据
	 * @return
     */
	public List<Teacher> getEntityList();

    /**
     * 获得所有数据带数据字典值
	 * @return
     */
	public List<Object[]> getEntityListWithCodeName();

    /**
     * 获得所有数据带数据字典值并分页
	 * @param pageable
     * @return
     */
	public Page<Teacher> getEntityListWithCodeName(Pageable pageable);

    /**
     * 根据id获得
	 * @param id
     * @return
     */
	public Teacher getOne(String id);

    /**
     * 根据对象获得
	 * @param teacher
     * @return
     */
	public Teacher findOne(Teacher teacher);

	/**
	 * 根据ids获得多个对象
	 * @param ids
	 * @return
	 */
	public List<Teacher> findAllById(List<String> ids);

    /**
     * 保存对象
	 * @param teacher
	 */
	public void save(Teacher teacher);

    /**
     * 编辑对象
	 * @param teacher
	 */
	public void edit(Teacher teacher);

    /**
     * 删除对象
	 * @param id
	 */
	public void delete(String id);

    /**
     * 根据对象获取数量
	 * @param teacher
     * @return
     */
	public Integer count(Teacher teacher);

}
